/*
* 
* Fichier source projet intel Acceler8 sous license GNU GPL v3.
* Voir http://www.gnu.org/copyleft/gpl.html pour plus d'informations
* La license est egalement disponible dans le repertoire /doc
* 
* Cree le : mardi 15 novembre 2011 à 15 : 36.
* Auteurs : Axel MOINET et Arnaud DURAND.
* 
* Nom de fichier : pipelineresolution.cpp
* Chemin du fichier : ./src/classes/pipelineresolution/pipelineresolution.cpp
* 
* Description :
* 
*/

#include "pipelineresolution.h"

pipelineResolution::pipelineResolution(threadPrincipal *p_thread, int p_nbJetons) {
	this->thread = p_thread;
	this->makePipeline();
	this->nbJetons = p_nbJetons;
}

int pipelineResolution::makePipeline() {
	this->filtreCGH = new filtreCalculCGH(this->thread);
	this->pipelineRes.add_filter(*(this->filtreCGH));

	this->filtreSousSequence = new filtreCalculSousSequence(this->thread);
	this->pipelineRes.add_filter(*(this->filtreSousSequence));

	return 0;
}

pipelineResolution::~pipelineResolution() {
	if(this->filtreCGH != NULL)
		delete this->filtreCGH;
	if(this->filtreSousSequence != NULL)
		delete this->filtreSousSequence;
}

int pipelineResolution::launchPipeline() {
	this->pipelineRes.run(this->nbJetons);
	this->thread->setComputeEndingFlag();
	return 0;
}

int pipelineResolution::clearPipeline() {
	this->pipelineRes.clear();
	return 0;
}
